package com.hearwego;

import java.util.List;

import com.utilities.Informacion;
import com.utilities.RssParserPull;

import android.os.AsyncTask;
import android.os.Bundle;
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.DialogInterface.OnCancelListener;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.Toast;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView.OnItemLongClickListener;

public class ActivityRutaTematica extends Activity {
	private ProgressDialog progressDialog;
	public RssParserPull parser;
	public List<Informacion> resultados;
	public String[] rutacons, rutanombre;
	public int zeroRutas;
	ArrayAdapter<String> adapter;
	ListView lista;
	Button bt_inicio;


	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_ruta_tematica);
        lista = (ListView) findViewById(R.id.list_gastos);

		new LoadRuta().execute("");
		
		bt_inicio = (Button) findViewById(R.id.bt_inicio);
		bt_inicio.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				onBackPressed();
			}
		});
		
	}

//	@Override
//	public boolean onCreateOptionsMenu(Menu menu) {
//		// Inflate the menu; this adds items to the action bar if it is present.
//		getMenuInflater().inflate(R.menu.activity_ruta_tematica, menu);
//		return true;
//	}
	
	public class LoadRuta extends AsyncTask<String, String, String>{

		@Override
		protected void onPreExecute() {
			super.onPreExecute();
    		Log.i("PRE", "PRE");
			progressDialog = ProgressDialog.show(ActivityRutaTematica.this, "",
					"Cargando...", true, true, new OnCancelListener() {
						
						@Override
						public void onCancel(DialogInterface arg0) {
							onBackPressed();
						}
			});
		}
		
		@Override
		protected String doInBackground(String... params) {
			Log.i("DO", "DO");

			parser = new RssParserPull("http://www.smartthinking.com.mx:8080/" +
					"HearWeGo/DataServlet?Query=select%20*%20from%20rutas&BaseDatos=hwg");
			resultados = parser.parse();
			
			if(resultados.size() > 0){
				zeroRutas = 1;
			}else{
				zeroRutas = 0;
			}
			
			rutacons = new String[resultados.size()];
			rutanombre = new String[resultados.size()];
			
			for(int i = 0 ; i < resultados.size(); i++){
				rutacons[i] = resultados.get(i).getRutaCons();
				rutanombre[i] = resultados.get(i).getRutaNombre();
				Log.i("rutacons "+i,""+resultados.get(i).getRutaCons());
				Log.i("rutanombre "+i,""+resultados.get(i).getRutaNombre());

			}


			
			return null;
		}
		
		@Override
		protected void onPostExecute(String result) {
			super.onPostExecute(result);
			
			if(zeroRutas == 1){
//				for(int i=0; i<idlista.length; i++){
//					Log.i("Arreglos", "idlista "+idlista[i]+" listaname "+listaname[i]);
//				}
				
				adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.simplelistitemlista, rutanombre);
				lista.setAdapter(adapter);

				lista.setOnItemClickListener(new OnItemClickListener() {

					@Override
					public void onItemClick(AdapterView<?> arg0, View arg1,
							int arg2, long arg3) {
						Intent intent_resultados_ruta = new Intent(ActivityRutaTematica.this, ActivityResultadosRutaTematica.class);
						intent_resultados_ruta.putExtra("rutacons", rutacons[arg2]);
						startActivity(intent_resultados_ruta);
//						Intent intent_detalle_gastos = new Intent(ActivityMisGastos.this, ActivityMisGastosDetalle.class);
//						intent_detalle_gastos.putExtra("idlista", idlista[arg2]);
//						startActivity(intent_detalle_gastos);
//						Bundle extras = new Bundle();
//						extras.putString("idlista", idlista[arg2]);
//						TabMisGastosDetalle tab = new TabMisGastosDetalle(extras);
//						tab.setArguments(extras);
						
//			            mActivity.pushFragments(Utilities.TAB_B, tab,true,true);

						
					}
				});
				
				
			}else if(zeroRutas == 0){
				lista.setAdapter(null);
				Toast.makeText(getApplicationContext(), "No hay rutas agregadas", Toast.LENGTH_SHORT).show();
			}

			
			progressDialog.dismiss();
			
			
		}
		
		
		
	}

}
